package com.ytc.content.service;

import com.ytc.commons.model.dto.CourseAuditDto;
import com.ytc.commons.model.dto.CourseBaseDto;
import com.ytc.commons.model.dto.CourseDto;
import com.ytc.commons.model.dto.PageRequest;
import com.ytc.commons.model.vo.CourseBaseVo;
import com.ytc.commons.model.vo.ResponseResult;
import com.ytc.content.domain.CourseBase;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;

/**
 * <p>
 * 课程基本信息 服务类
 * </p>
 *
 * @since 2023-04-01
 */
public interface CourseBaseService extends IService<CourseBase> {

    //分页查询课程信息
    ResponseResult courseList(PageRequest request, CourseDto dto);

    //上传课程封面图片
    ResponseResult<String> upload(MultipartFile uploadFile) throws Exception;
    //保存课程
    ResponseResult<CourseBaseVo> saveCourseBase(CourseBaseDto dto);
    //逻辑删除
    void updateStatus(Long courseId);

     //跟新课程
    ResponseResult<CourseBaseVo> updateCourse(CourseBaseDto dto);

    //机构提交审核
    ResponseResult commit(Long courseBaseId);

    //管理端平台审核
    ResponseResult approve(CourseAuditDto dto);
}
